package com.easylinkin.linkappapi.knowledgebase.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.easylinkin.linkappapi.knowledgebase.entity.KnowledgeBase;
import com.baomidou.mybatisplus.extension.service.IService;
import com.easylinkin.linkappapi.knowledgebase.vo.BatchAddVO;
import com.easylinkin.linkappapi.knowledgebase.vo.BatchUpateTypeVO;

/**
 * <p>
 * 知识库表 服务类
 * </p>
 *
 * @author xy
 * @since 2021-12-02
 */
public interface KnowledgeBaseService extends IService<KnowledgeBase> {

  IPage<KnowledgeBase> getKnowledgeBasePage(Page page, KnowledgeBase customQueryParams);

  void addKnowledgeBase(KnowledgeBase knowledgeBase);

  void updateKnowledgeType(KnowledgeBase knowledgeBase);

  void deleteKnowledgeBaseById(Long id);

  void batchAdd(BatchAddVO batchAddVO);

  void batchUpdateType(BatchUpateTypeVO batchUpateTypeVO);

  String downloadAttachment(Long id);

  KnowledgeBase getDetailById(Long id);

  void knowledgeZip(KnowledgeBase knowledgeBase);
}
